import { render } from 'vue'
import { createVNode } from 'vue-demi'
import Toast from './Toast.vue'

// 容器
const div = document.createElement('div')
// 写个标识，能认出来这个div是toast
div.setAttribute('class', 'toast-container')
// 挂载容器
document.body.appendChild(div)

// 定时
let timer = null
export default ({ text, type }) => {
  // 编译成虚拟节点:createVNode(组件,属性)
  const vnode = createVNode(Toast, { text, type })
  // vnode放置到容器内
  // render(虚拟节点，dom容器)
  render(vnode, div)

  clearTimeout(timer)
  timer = setTimeout(() => {
    render(null, div)
  }, 3500)
}
